Witam, mam skrypt ktorym dodaje produkt do bazy i uploaduje miniaturki zdjec do folderu. mam problem jak klikne wyslij to sie pokazuej pusta biała strona jak klikne pokaz zrodlo to mam tylko:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<META http-equiv=Content-Type content="text/html; charset=iso-8859-2"></HEAD>
Zdjecia sie uploaduja tylko są całe czarne:(
Kod:
- Zapis do bazy
<?php
//Upload fotek 3x wywolanie funkcji
$prod_g_insr = $insr;
$prod_g_jezyk = $lang;
$prod_g_nal = $kat_id;
$prod_data = date("Y-m-d"); $prod_godz = date("H:i:s");
mini($prod_o_foto1,'1','../images/produkty','60','60');
mini($prod_o_foto2,'2','../images/produkty','60','60');
mini($prod_o_foto3,'3','../images/produkty','60','60');
$query = sql("INSERT INTO ".$prefix."prod SET
prod_data='$prod_data',
prod_godz='$prod_godz';");
$query = sql("INSERT INTO ".$prefix."prod_cena SET
prod_c_z_stawka='$prod_c_z_stawka',
prod_c_z_netto='$prod_c_z_netto',
prod_c_z_brutto='$prod_c_z_brutto',
prod_c_s_stawka='$prod_c_s_stawka',
prod_c_s_netto='$prod_c_s_netto',
prod_c_s_brutto='$prod_c_s_brutto',
prod_c_upust='$prod_c_upust';");
$query = sql("INSERT INTO ".$prefix."prod_gdzie SET
prod_g_insr='$prod_g_insr',
prod_g_jezyk='$prod_g_jezyk',
prod_g_nal='$prod_g_nal';");
$query = sql("INSERT INTO ".$prefix."prod_opis SET
prod_o_nazwa='$prod_o_nazwa',
prod_o_producent='$prod_o_producent',
prod_o_kod='$prod_o_kod',
prod_o_ilosc='$prod_o_ilosc',
prod_o_opis='$prod_o_opis',
prod_o_transport='$prod_o_transport',
prod_o_montaz='$prod_o_montaz',
prod_o_foto1='$prod_o_foto1',
prod_o_foto2='$prod_o_foto2',
prod_o_foto3='$prod_o_foto3';");
print("<p align=\"center\"><font face=\"Verdana\" style=\"font-size: 8pt; font-weight: 700\">Produkt: <br>$prod_o_nazwa<br> zostal dodany poprawnie.</font></p>");
}
?>
- Tworzenie miniaturek
<?php
function mini($userfile,$ty,$folder,$maxx,$maxy){
$pic = $_FILES['userfile']['tmp_name'];
$jpegImg = imageCreateFromJPEG($pic);
$imgsizex = imageSX($jpegImg);
$imgsizey = imageSY($jpegImg);
$jpegImg_small = imagecreatetruecolor(160, 160);
if ($imgsizex <> $imgsizey) {
if ($imgsizex > 160 OR $imgsizey > 160) {
if ($imgsizex < $imgsizey) {
$ax = $imgsizex / 160;
$axs = (integer) $ax;
$axr = 160 * $axs + ($imgsizex - 160 * $axs);
$ayr = 160 * $axs + ($imgsizex - 160 * $axs);
} else {
$ay = $imgsizey / 160;
$ays = (integer) $ay;
$ayr = 160 * $ays + ($imgsizey - 160 * $ays);
$axr = 160 * $ays + ($imgsizey - 160 * $ays);
}
$jpegImg_dst = imagecreatetruecolor($axr, $ayr);
imagecopymerge($jpegImg_dst, $jpegImg, 0, 0, 0, 0, $axr, $ayr, 100);
$imgsizex = $axr;
$imgsizey = $ayr;
} else {
$jpegImg_dst = $jpegImg;
}
} else {
$jpegImg_dst = $jpegImg;
}
imagecopyresampled($jpegImg_small, $jpegImg_dst, 0, 0, 0, 0,
160, 160, $imgsizex, $imgsizey);
0, 8);
$nnazwa = date("hismsdmY"); $nnazwa = $ty.$nnazwa;
$dirtosaveresized = getcwd()."/$folder/mini_$nnazwa.jpg"; ImageJPEG($jpegImg_small, $dirtosaveresized, 65);
if($ty == '1'){$prod_o_foto1= "$nnazwa.jpg";}
if($ty == '2'){$prod_o_foto2= "$nnazwa.jpg";}
if($ty == '3'){$prod_o_foto3= "$nnazwa.jpg";}
}
?>
Zwiekszałem juz czas wykonywania skryptu do 30 i nic to nie dało.
EDIT:
Zrobiłem:D
<?php
function mini($prod_o_foto1,$prod_o_foto2,$prod_o_foto3,$ty,$folder,$maxx,$maxy){
if(!empty($prod_o_foto1)){ $pic = $_FILES['prod_o_foto1']['tmp_name'];
}
if(!empty($prod_o_foto2)){ $pic = $_FILES['prod_o_foto2']['tmp_name'];
}
if(!empty($prod_o_foto3)){ $pic = $_FILES['prod_o_foto3']['tmp_name'];
}
?>
AND
<?php
mini($prod_o_foto1,'','','1','../images/produkty','60','60');
mini('',$prod_o_foto2,'','2','../images/produkty','60','60');
mini('','',$prod_o_foto3,'3','../images/produkty','60','60');
?>
Ten post edytował wozniak 8.04.2006, 00:02:40